namespace RBAC.Write.Api.Application.Command.BomCommand
{
    using MediatR;
    using RBAC.ErrorCode;

    /// <summary>
    /// 编辑BOM 命令（仅允许修改名称、版本、单位、修订说明、状态）
    /// </summary>
    public class BomUpdateCommand : IRequest<APIResult<int>>
    {
        /// <summary>
        /// BOM Id（必填）
        /// </summary>
        public long Id { get; set; }

        /// <summary>
        /// BOM名称（可选，传空表示不修改）
        /// </summary>
        public string? Name { get; set; }

        /// <summary>
        /// 版本号（如：V1.0，可选）
        /// </summary>
        public string? Version { get; set; }

        /// <summary>
        /// 主单位（可选）
        /// </summary>
        public string? Unit { get; set; }

        /// <summary>
        /// 修订说明（可选）
        /// </summary>
        public string? RevisionNotes { get; set; }

        /// <summary>
        /// 状态（草稿=0, 已发布=1, 已冻结=2, 作废=3，可选）
        /// </summary>
        public int? Status { get; set; }
    }
}
